#include"processbar.h"
#include<time.h>
#include<stdlib.h>
#include<unistd.h>
#define FILESIZE 1024*1024*1024
void download(callback_t cb)
{
    srand(time(NULL)^1023);
    int tatal = FILESIZE;
    while(tatal)
    {
        usleep(50000);
        int one = rand()%(1024*1024*10);
        tatal -= one;
        if(tatal<0) tatal = 0;
        int download = FILESIZE-tatal;
        double rate = (download*1.0/(FILESIZE))*100.0;
        cb(rate);//调用回调函数显示进度
    }
    printf("\n");
}
int main()
{
    download(process_flush);
    return 0;
}
//模拟一种下载场景
//void download(callback_t cb)
//{
//    srand(time(NULL)^1023);
//    int tatal = FILESIZE;
//    while(tatal)
//    {
//        usleep(5000);//下载动作
//        int one = rand()%(1024*1024*5);
//        tatal -= one;
//        if(tatal<0)tatal = 0;
//        //当前下载的进度是多少？
//        int download = FILESIZE-tatal;
//        double rate = (download*1.0/(FILESIZE))*100.0;
//        cb(rate);//调用rate比率显示
//    }
//    printf("\n");
//}
//int main()
//{
//   // process();
//   download(process_flush);
//    return 0;
//}
